<?php

function agregaCelda(&$objeto, $params, $separador1 = "=;", $separador2 = "=:") {
    $arr_param = explode($separador1, $params);
    $flag_sumar = false;
    foreach ($arr_param as $param) {
        $arr_campo = explode($separador2, $param);
        $campo = trim($arr_campo[0]);
        $valor = trim($arr_campo[1]);
        if ($campo == "" || $valor == "") {
            continue;
        }
        if ($campo == "sumar") {
            if ($valor == true) {
                $flag_sumar = true;
            }
        } else if ($campo == "valor" && $flag_sumar == true) {
            $objeto->$campo += $valor;
        } else {
            $objeto->$campo = $valor;
        }
    }
}

/* Crear tabla de datos */

function crearTabla($tablaArr, $repetirTitulo = false, $tituloT = '', $widthT = '', $idT = 'tablaPrincipal', $mostrar = '') {
    $x = 0;
    $i = 0;
    echo '<center>';
    echo '<table border=0 width="' . $widthT . '" class="visible" id="' . $idT . '" name="' . $idT . '">';
    @reset($tablaArr);

    while ($tabla = @current($tablaArr)) {
        @reset($tabla);
        $fila = @current($tabla);
        @reset($fila);
        unset($campos);
        while ($registro = @current($fila)) {
            $campo = key($fila);
            $campos->$campo = $campo;
            $idcolumna->$campo = $registro->idcolumna;
            @next($fila);
        }
        @reset($tabla);
        if ($i > 0 && !$repetirTitulo) {
            @next($tabla);
        } else {
            echo $tituloT;
        }
        $i++;

        while ($fila = @current($tabla)) {
            $confila = 0;
            @reset($campos);
             if($x == 0){
         echo '<thead>';
        }
            while ($campo = @current($campos)) {
                if ($confila == 0) {
                    $id = $fila->$campo->idfila;
                    if ($fila->$campo->class_tr)
                        $clase = $fila->$campo->class_tr;
                    else
                        $clase = "";
                    if ($fila->$campo->resaltar)
                        $eventos = 'onClick="mouse(this);" onDblClick="quitamouse(this)"';
                    //$clase= $fila->$campo 
                    if (!isset($fila->$campo->valor) || trim($fila->$campo->valor) == '') {
                        @next($campos);
                        continue;
                    }
                    echo '<tr id="' . $id . '" name="' . $id . '" ' . $eventos . ' class="' . $clase . '" >';
                    $confila = 1;
                }

                //oculta las columnas en principio
                if (isset($idcolumna->$campo) and $mostrar == '')
                    $detalle_estilo = 'style="display:none"';
                else
                    $detalle_estilo = '';
                //fin ocultar columnas

                $ancho = '';
                if ($fila->$campo->ancho) {
                    $ancho = $fila->$campo->ancho;
                }

                if (isset($fila->$campo->valor)) {
                    if (isset($fila->$campo->titulo)) {
                        if ($fila->$campo->titulo == '#') {
                            $fila->$campo->titulo = formatear($fila->$campo->valor);
                        }
                        $tittem = substr($fila->$campo->titulo, 0, 1);
                        if ($tittem == '?') {
                            $fila->$campo->titulo = str_replace('?', '', $fila->$campo->titulo);

                            echo '<td width="' . $ancho . '" id="' . $idcolumna->$campo . '" name="' . $idcolumna->$campo . '" class="' . $fila->$campo->clase . '" onmouseover="Tip(\'' . $fila->$campo->titulo . '\', SHADOW, true, STICKY, true)" ' . $detalle_estilo . '>';
                        } else if ($tittem == '|') {
                            $fila->$campo->titulo = str_replace('|', '', $fila->$campo->titulo);

                            echo '<td width="' . $ancho . '" id="' . $idcolumna->$campo . '" name="' . $idcolumna->$campo . '" class="' . $fila->$campo->clase . '" onmouseover="Tip(\'' . $fila->$campo->titulo . '\', SHADOW, true, STICKY, true, CLICKCLOSE, true)" ' . $detalle_estilo . '>';
                        } else {
                            echo '<td width="' . $ancho . '" id="' . $idcolumna->$campo . '" name="' . $idcolumna->$campo . '" class="' . $fila->$campo->clase . '" onmouseover="Tip(\'' . $fila->$campo->titulo . '\', SHADOW, true)" ' . $detalle_estilo . '>';
                        }
                    } else {
                        echo '<td width="' . $ancho . '" id="' . $idcolumna->$campo . '" name="' . $idcolumna->$campo . '" class="' . $fila->$campo->clase . '" ' . $detalle_estilo . '>';
                    }
                } else {
                    echo '<td width="' . $ancho . '" id="' . $idcolumna->$campo . '" name="' . $idcolumna->$campo . '" class="vacio" ' . $detalle_estilo . '>';
                }
                if ($fila->$campo->enlace) {
                    echo '<a width="' . $ancho . '" class="' . $fila->$campo->clase . '" href="' . $fila->$campo->enlace . '" target="' . $fila->$campo->target . '">';
                }

                if (isset($fila->$campo->prefijo)) {
                    echo $fila->$campo->prefijo;
                }

                if (isset($fila->$campo->decimales) || isset($fila->$campo->divisor)) {
                    if (!isset($fila->$campo->decimales)) {
                        $decimalesT = 0;
                    } else {
                        $decimalesT = $fila->$campo->decimales;
                    }
                    if (!isset($fila->$campo->divisor)) {
                        $divisorT = 1;
                    } else {
                        $divisorT = $fila->$campo->divisor;
                    }
                    echo formatear($fila->$campo->valor, $decimalesT, $divisorT);
                } else {
                    echo $fila->$campo->valor;
                }

                if (isset($fila->$campo->sufijo)) {
                    echo $fila->$campo->sufijo;
                }

                //echo  '&nbsp';

                if ($fila->$campo->enlace) {
                    echo '</a>';
                }
                echo '</td>';
                @next($campos);
            }
              if($x == 0){
                echo '</thead>';
                $x = 1;
        }
            //echo '<td></td></tr>';
            @next($tabla);
        }
        @next($tablaArr);

        // echo '<tr id="'.$id.'"><td></td></tr>';
    }
    echo '</table>';
    echo '</center>';
    //sleep(1);
}

?>
